package com.punch.user.service;


import com.punch.common.dto.user.role.RoleMenuDTO;
import com.punch.common.model.SysRole;
import com.punch.common.page.PageInfo;
import com.punch.common.query.user.role.RoleQueryInfo;
import com.punch.common.service.ISuperService;
import com.punch.common.vo.user.role.RoleVO;

import java.util.List;

/**
 * @author zlt
 * <p>
 * Blog: https://zlt2000.gitee.io
 * Github: https://github.com/zlt2000
 */
public interface RoleService extends ISuperService<SysRole> {

    /**
     * 角色分页
     *
     * @param queryInfo 查询条件
     * @return PageInfo<RoleVO>
     */
    PageInfo<RoleVO> queryPage(RoleQueryInfo queryInfo);

    /**
     * 角色菜单功能权限
     *
     * @param roleMenuDTO 批量角色修改表单
     * @return Long
     * @author wujj
     * @since 2020/6/5 14:26
     */
    Long roleMenuPerm(RoleMenuDTO roleMenuDTO);

    /**
     * 角色菜单功Id列表
     *
     * @param roleId 角色id
     * @return 菜单id
     * @author wujj
     * @since 2020/6/5 14:26
     */
    List<String> roleMenuList(Long roleId);
}
